package dongbai.soft.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author Kun
 * @email
 * @date 2023-06-21 13:53:47
 */
@Data
@TableName("orderform")
public class OrderEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 订单唯一标识符
     */
    @TableId
    private String oid;
    /**
     * 客户标识符
     */
    private String cid;
    /**
     * 客户名
     */
    private String cname;
    /**
     * 客户电话
     */
    private String cphone;
    /**
     * 收货地址
     */
    private String address;
    /**
     * 商品唯一标识符
     */
    private String pid;
    /**
     * 商品名
     */
    private String pname;
    /**
     * 商品价格
     */
    private BigDecimal price;
    /**
     * 商品数量（数组）
     */
    private Integer pnum;
    /**
     * 商品类别唯一标识符
     */
    private String tid;
    /**
     * 商品一级分类名
     */
    private String ftname;
    /**
     * 商品二级分类名
     */
    private String stname;
    /**
     * 下单时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date orderDate;
    /**
     * 审批时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date examDate;
    /**
     * 出库时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date startDate;
    /**
     * 到达分站时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date transDate;
    /**
     * 出站时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date outTransDate;
    /**
     * 签收时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date finishDate;
    /**
     * 取消时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date cancelDate;
    /**
     * 途径中转站标识符
     */
    private String trid;
    /**
     * 配送员标识符
     */
    private String did;
    /**
     * 配送员名字
     */
    private String dname;
    /**
     * 配送费
     */
    private BigDecimal deliverPrice;
    /**
     * 订单是否结束（0表示未结束，1表示结束）
     */
    private Integer isend;
    /**
     * 订单状态（状态码:已结束状态/未结束状态）（0签收/挂起;1审批未通过/待审批;2在分站/待发货;3在配送员/待入站;4在仓库/待出站;5确定取消/待签收）
     */
    private Integer status;

    /**
     * 非数据表项
     * 状态的中文名
     */
    @TableField(exist = false)
    private String staword;
}
